package conservare.dao;

import java.util.List;

import javax.persistence.EntityTransaction;

import conservare.modelo.boleto.ArquivoRetorno;
import conservare.modelo.boleto.ArquivoRetornoDetalhe;

public class BoletoRetornoDAO extends Dao {
	private static final long serialVersionUID = 8866608026345058123L;


	public ArquivoRetorno salvar(ArquivoRetorno boletoRetorno) {
		
		EntityTransaction transaction = getEm().getTransaction();
		transaction.begin();
		
		if(boletoRetorno.getId() == null)
			getEm().persist(boletoRetorno);
		else
			getEm().merge(boletoRetorno);
		
		transaction.commit();
		
		return boletoRetorno;
	}

	
	public List<ArquivoRetornoDetalhe> obterBoletosRetornoDetalhesNaoProcessados(){
		StringBuilder sql = new StringBuilder("");
		sql.append("SELECT a FROM BoletoRetornoDetalhe a ")
		.append("   WHERE a.isBaixaProcessada = false ")
		.append("   ORDER BY a.dataVencimentoDoTitulo desc ");
		
		return getList(ArquivoRetornoDetalhe.class, sql.toString());
	}
	
}
